Skill

উদাহরণ সহ EL এর ব্যবহার

Java Technologies - জেএসপি (JSP) - JSP এবং EL (Expression Language)
155

EL (Expression Language) হল একটি শক্তিশালী এবং সহজ-উপযোগী ভাষা যা জেএসপি (JSP) এবং সাভলেট (Servlet) টেমপ্লেটিংয়ের মধ্যে ডাইনামিক কন্টেন্ট যোগ করার জন্য ব্যবহৃত হয়। এটি জেএসপি পেজে ডাইনামিক এক্সপ্রেশন রেন্ডার করতে সাহায্য করে, যেমন JavaBeans, সেশন অ্যাট্রিবিউট, এবং রিকোয়েস্ট প্যারামিটারগুলি। EL ব্যবহারের মাধ্যমে আপনি কোডিং এর পরিমাণ কমাতে পারেন এবং কোড আরও পরিষ্কার ও সহজভাবে লিখতে পারেন।

EL এর সুবিধা


  • সহজ এবং স্পষ্ট সিনট্যাক্স: EL এক্সপ্রেশনটি #{} বা ${} এর মধ্যে ব্যবহার করা হয়, যা কোড লেখার প্রক্রিয়াকে সহজ এবং সোজা করে।
  • ডাইনামিক ডেটা প্রদর্শন: EL ব্যবহার করে বিভিন্ন ধরনের ডাইনামিক ডেটা যেমন রিকোয়েস্ট প্যারামিটার, সেশন অ্যাট্রিবিউট, এবং অ্যাপ্লিকেশন স্কোপের ডেটা সরাসরি HTML পেজে ইনজেক্ট করা যায়।
  • কোডের পরিমাণ কমানো: Java কোডের পরিবর্তে সরাসরি EL ব্যবহার করা হলে, কোড কম এবং পরিষ্কার থাকে।

EL এর গঠন


EL এর সাধারণ গঠন হল ${expression} অথবা ${} এর ভিতরে এক্সপ্রেশন দেওয়া হয়। এখানে expression হল সেই ডেটা বা ভেরিয়েবল যার মান আপনি HTML পেজে প্রদর্শন করতে চান।


উদাহরণ: EL এর ব্যবহার


1. সাধারণ EL এক্সপ্রেশন

এটি একটি খুব সাধারণ উদাহরণ, যেখানে name ভেরিয়েবলকে HTML পেজে প্রদর্শন করা হচ্ছে।

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <body>
    <h2>Welcome, ${name}!</h2>
  </body>
</html>

এখানে ${name} EL এক্সপ্রেশন ব্যবহার করা হয়েছে, যা name ভেরিয়েবল থেকে ডেটা নেবে এবং সেই ডেটা HTML পেজে প্রদর্শন করবে। আপনি যদি পেজের স্কোপে name ভেরিয়েবল সেট করেন, তাহলে এটি সেই মান প্রদর্শন করবে।

2. অবজেক্টের প্রপার্টি অ্যাক্সেস করা

আপনি EL এর মাধ্যমে JavaBeans বা অবজেক্টের প্রপার্টি অ্যাক্সেস করতে পারেন। ধরুন, আমাদের একটি Person ক্লাস রয়েছে যার মধ্যে name এবং age প্রপার্টি রয়েছে।

public class Person {
    private String name;
    private int age;

    // getters and setters
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

এখন, আপনি এই JavaBeans অবজেক্টটির প্রপার্টি EL এর মাধ্যমে অ্যাক্সেস করতে পারেন।

<%@ page import="com.example.Person" %>
<%
    Person person = new Person();
    person.setName("John");
    person.setAge(30);
    pageContext.setAttribute("person", person);
%>
<html>
  <body>
    <h2>Person's Name: ${person.name}</h2>
    <h3>Person's Age: ${person.age}</h3>
  </body>
</html>

এখানে, person.name এবং person.age EL ব্যবহার করে Person অবজেক্টের প্রপার্টি অ্যাক্সেস করা হয়েছে।

3. Request, Session, এবং Application স্কোপে ডেটা অ্যাক্সেস করা

EL ব্যবহার করে আপনি request, session, এবং application স্কোপের ডেটা সহজে অ্যাক্সেস করতে পারেন।

<%@ page session="true" %>
<%
    session.setAttribute("user", "Alice");
%>
<html>
  <body>
    <h2>Welcome, ${sessionScope.user}!</h2>
  </body>
</html>

এখানে, ${sessionScope.user} EL এক্সপ্রেশন ব্যবহার করে সেশন স্কোপে সংরক্ষিত user অ্যাট্রিবিউট অ্যাক্সেস করা হয়েছে। একইভাবে আপনি requestScope এবং applicationScope ব্যবহার করে রিকোয়েস্ট বা অ্যাপ্লিকেশন স্কোপের ডেটা অ্যাক্সেস করতে পারেন।

4. কন্ডিশনাল এবং লুপ অপারেশন

EL ব্যবহার করে আপনি কিছু সহজ কন্ডিশনাল চেক এবং লুপ অপারেশনও করতে পারেন। উদাহরণস্বরূপ:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
  <body>
    <c:choose>
      <c:when test="${user != null}">
        <h2>Welcome, ${user}!</h2>
      </c:when>
      <c:otherwise>
        <h2>Please log in.</h2>
      </c:otherwise>
    </c:choose>
  </body>
</html>

এখানে, JSTL ট্যাগ ব্যবহার করা হয়েছে, যা EL এক্সপ্রেশনকে সহজে কন্ডিশনাল চেকের মধ্যে ইনক্লুড করে।


EL এর উপকারিতা


  • সহজ সিনট্যাক্স: EL ব্যবহার করে আপনি কমপ্লেক্স Java কোডিংয়ের পরিবর্তে সরাসরি ডাইনামিক কন্টেন্ট প্রদর্শন করতে পারেন।
  • ডাইনামিক ডেটা প্রদর্শন: EL আপনাকে স্কোপের বিভিন্ন ডেটা যেমন রিকোয়েস্ট, সেশন, অ্যাপ্লিকেশন স্কোপে থাকা ডেটা প্রদর্শন করতে সহায়তা করে।
  • কোড পরিস্কার রাখা: EL কোডের পরিমাণ কমিয়ে দেয় এবং এটি HTML টেমপ্লেটের মধ্যে Java কোড প্রবাহিত করতে সাহায্য করে।

এভাবে EL (Expression Language) ব্যবহার করে আপনি জেএসপি পেজে ডাইনামিক কন্টেন্ট প্রবর্তন করতে পারেন এবং আপনার কোডিং প্রক্রিয়াকে আরও সহজ এবং পরিষ্কার রাখতে পারেন।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...